由于近期国内网络出版服务管理规定的出台,Apple 在华的部分业务似乎遇到了一点小麻烦,与此同时关于 App Store 下载缓慢的问题也又开始讨论起来。
原本是老生常谈的问题,无奈如今一些群体中的反智主义盛行,导致「不愿意好好弄清楚事情是怎么回事,并且通过行动有意无意地鼓励大家不要去好好弄清楚事情是怎么回事」的人呈指数性增长。另一方面,虽说处在自由言论的环境下,但无意义的、有人身攻击性质的、不礼貌的争辩越来越多。
事实上,Apple 的互联网服务的确是有一定的问题,不然也不会有「Apple 公司的各项互联网服务基本上是在打云计算的脸:从不伸缩,通过拒绝服务的方式抹平峰值访问量」的调侃。
之前自己有过这方面的优化和调教经验,但是当时由于时间关系,事后依然是没留下什么实质性的资料和文档(又一个没留下资料的栗子),不过今天就抽出一点时间来简单谈谈 App Store 在国内下载缓慢的问题以及相关的优化经验。
Apple 基础服务层级简析
Web Service
- Apple 的 Web Service 是由 Amazon 的 AWS 提供的自然不用多说,而且今年 Apple 也有建立自己 Data Center 的趋势,想必是想摆脱对 AWS 的过分依赖。
CDN
- 美国本土以及全球其他地区使用 Akamai
- 中国地区– 蓝汛 (China Cache)
相关域名
验证服务器:
- service.gc.apple.com
- appleid.apple.com
- gc.apple.com
- gsa.apple.com
App Store 服务器:
- swscan.apple.com
- swquery.apple.com
- swcdn.apple.com(CDN)
推送服务器:
- gateway.push.apple.com
- gateway.sandbox.push.apple.com
地理服务器:
- gs-loc.apple.com
- ls.apple.com
iMessage 和 Facetime 相关服务器:
- ess.apple.com
- service.ess.apple.com
- init.ess.apple.com
- static.ess.apple.com
iTunes 服务器(*.itunes.apple.com)
- audio.itunes.apple.com
- play.itunes.apple.com
- radio.itunes.apple.com
- radio-services.itunes.apple.com
- radio-activity.itunes.apple.com
- se.itunes.apple.com
- su.itunes.apple.com
- upp.itunes.apple.com
- client-api.itunes.apple.com
- search.itunes.apple.com
- iosapps.itunes.apple.com
- osxapps.itunes.apple.com
- Apple Music and Live streaming
- aod.itunes.apple.com
- mvod.itunes.apple.com
- streamingaudio.itunes.apple.com
OS X/iOS 应用下载大体步骤
- 用户通过接入的运营商网络解析相关服务器 IP
- 连接总部验证服务器进行相关身份认证
- 验证成功后,分配本土部署的镜像 CDN 进行下载
中国国内访问缓慢可能原因
连接总部验证服务时
偶尔受特色网络影响- 运营商国际出口问题
验证完毕后下载时
- 运营商 DNS 问题
- 无视官方优化一律解析至国外(偶尔)
- DNS 更新缓慢
- 官方下载 CDN 变动后,不能及时更新 DNS
- 运营商 DNS 问题
举个栗子
具体操作方法不做多赘述,不过这里提供两个小工具,有兴趣的可以进行测试和检验。
最后则是 Apple 中国官方的 System Status
解决方案
普通用户
- 更换合适的 DNS
- Surge or VPN
更好的方案
优点
- 连接总部验证服务器时通过代理,白屏时间缩短
- 认证成功后,通过配置相关 DNS 规则,选择最佳的本土 CDN 镜像下载
- 成员用户的学习成本几乎为零,无需客户端任何配置,直接接入网络即可
最终效果: